package listacompra;
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */


import java.io.BufferedReader;
import java.io.InputStreamReader;


/**
 *
 * @author root
 */
public class ListaCompra {


    /**
     * mostrarMenu
     * Muestra el men� al usuario
     */
    public static void mostrarMenu() {

        System.out.println("-----------------------");
    	System.out.println("1. Mostrar lista");
    	System.out.println("2. Insertar elemento");
    	System.out.println("3. Eliminar elemento");
    	System.out.println("4. Salir");
    }

    /**
     * inicializarVacio
     * Inicia cada elemento del array con un String vacío
     * @param listaCompra
     */
    public static void inicializarVacio(String [] listaCompra) {
        for (int i=0;i<listaCompra.length;i++) {
            listaCompra[i] = "";
        }
    }

    /**
     * insertarElemento
     * Inserta un nuevo elemento en la lista de la compra
     * @param listaCompra
     * @param nuevoElemento
     * @return
     */
    public static int insertarElemento (String [] listaCompra, String nuevoElemento) {
        for (int i=0;i<listaCompra.length;i++) {
            if (listaCompra[i]=="") {
                listaCompra[i] = nuevoElemento;
                return i;
            }
        }
        return -1;
    }

    /**
     * eliminarElemento
     * Elimina un elemento de la lista
     * @param listaCompra
     * @param cual
     */
    public static void eliminarElemento (String[] listaCompra, int cual) {
        if (cual>=0 && cual < listaCompra.length) {
            listaCompra[cual] = "";
        } else {
        	System.out.println("Numero fuera de rango: 0-9");
        	
        }
    }

    /**
     * mostrarLista
     * Muestra todos los elementos de la lista
     * @param listaCompra
     */
    public static void mostrarLista (String[] listaCompra) {
        System.out.println("-+-+-+-+- Lista de la Compra -+-+-+-+-");
        for (int i = 0; i < listaCompra.length; i++) {
            System.out.println( i +". " + listaCompra[i]);
        }
    }
    
    /**
     * Programa principal
     * @param args the command line arguments
     */
    public static void main(String[] args) throws Exception {
        // TODO code application logic here
        String[] lista = new String[10];
        int opcion = 0;
        String linea = "";
        String nuevoElemento = "";
        int elemento = 0;

        BufferedReader consola =new BufferedReader(new InputStreamReader(System.in));


        inicializarVacio(lista);
        
        do {
            mostrarMenu();
            
            linea = consola.readLine();
            opcion = Integer.parseInt(linea);
            switch (opcion) {
                case 1: mostrarLista(lista);
                        break;

                case 2: System.out.println("Introduce elemento: ");
                        nuevoElemento = consola.readLine();
                        elemento = insertarElemento(lista, nuevoElemento);
                        System.out.println("Elemento insertado: " + elemento);
                        break;

                case 3: System.out.println("Introduce número de elemento a quitar: ");
                        linea = consola.readLine();
                        elemento = Integer.parseInt(linea);
                        eliminarElemento(lista, elemento);
                        System.out.println("Elemento eliminado: " + elemento);

                        break;
                default:  break;
            }
        } while (opcion!=4);

        System.out.println("Gracias por usar la lista de la compra");
    }

}